package com.yunfeisoft.business.model;

import com.yunfeisoft.common.base.BaseModel;
import com.yunfeisoft.common.sql.record.TransientField;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.io.Serializable;

/**
 * ClassName: DailyLifeActivityAssessment
 * Description: 日常生活活动评估表
 *
 * @Author: Jackie liu
 * Date: 2020-05-22
 */
@Entity
@Table(name = "TT_DAILY_LIFE_ACTIVITY_ASSESSMENT")
public class DailyLifeActivityAssessment extends BaseModel implements Serializable {

    /**
     * Field serialVersionUID: 序列号
     */
    private static final long serialVersionUID = 1L;

    /**
     * 老人入住关联id
     */
    @Column
    private String elderId;

    /**
     * 进食情况分数
     */
    @Column
    private Integer eatScore;

    public String getEatScoreStr() {
        if (eatScore == 10) {
            return "可独立进食";
        } else if (eatScore == 5) {
            return "需部分帮助";
        } else if (eatScore == 0) {
            return "需极大帮助或完全依赖他人";
        }
        return null;
    }

    /**
     * 洗澡情况分数
     */
    @Column
    private Integer washScore;

    public String getWashScoreStr() {
        if (washScore == 5) {
            return "准备好洗澡水后，可自己独立完成洗澡过程";
        } else if (washScore == 0) {
            return "在洗澡过程中需他人帮助";
        }
        return null;
    }

    /**
     * 修饰情况分数
     */
    @Column
    private Integer retouchScore;

    public String getRetouchScoreStr() {
        if (retouchScore == 5) {
            return "可自己独立完成";
        } else if (retouchScore == 0) {
            return "需他人帮助";
        }
        return null;
    }

    /**
     * 穿衣情况分数
     */
    @Column
    private Integer wareScore;

    public String getWareScoreStr() {
        if (wareScore == 10) {
            return "可独立完成";
        } else if (wareScore == 5) {
            return "需部分帮助";
        } else if (wareScore == 0) {
            return "需极大帮助或完全依赖他人";
        }
        return null;
    }


    /**
     * 大便控制情况分数
     */
    @Column
    private Integer stoolControlScore;

    public String getStoolControlScoreStr() {
        if (stoolControlScore == 10) {
            return "可控制大便";
        } else if (stoolControlScore == 5) {
            return "偶尔失控";
        } else if (stoolControlScore == 0) {
            return "完全失控";
        }
        return null;
    }

    /**
     * 小便控制情况分数
     */
    @Column
    private Integer peeControlScore;

    public String getPeeControlScoreStr() {
        if (peeControlScore == 10) {
            return "可控制小便";
        } else if (peeControlScore == 5) {
            return "偶尔失控";
        } else if (peeControlScore == 0) {
            return "完全失控,或留置导尿管";
        }
        return null;
    }

    /**
     * 入厕情况分数
     */
    @Column
    private Integer toiletScore;

    public String getToiletScoreStr() {
        if (toiletScore == 10) {
            return "可独立完成";
        } else if (toiletScore == 5) {
            return "需部分帮助";
        } else if (toiletScore == 0) {
            return "需极大帮助或完全依赖他人";
        }
        return null;
    }

    /**
     * 床椅转移情况分数
     */
    @Column
    private Integer bedChairTransferScore;

    public String getBedChairTransferScoreStr() {
        if (bedChairTransferScore == 15) {
            return "可独立完成";
        } else if (bedChairTransferScore == 10) {
            return "需部分帮助";
        } else if (bedChairTransferScore == 5) {
            return "需极大帮助";
        } else if (bedChairTransferScore == 0) {
            return "完全依赖他人";
        }
        return null;
    }

    /**
     * 平地行走情况分数
     */
    @Column
    private Integer walkGroundScore;

    public String getWalkGroundScoreStr() {
        if (walkGroundScore == 15) {
            return "可独立在平地上行走45m";
        } else if (walkGroundScore == 10) {
            return "需部分帮助";
        } else if (walkGroundScore == 5) {
            return "需极大帮助";
        } else if (walkGroundScore == 0) {
            return "完全依赖他人";
        }
        return null;
    }

    /**
     * 上下楼梯情况分数
     */
    @Column
    private Integer walkStairsScore;

    public String getWalkStairsScoreStr() {
        if (walkStairsScore == 10) {
            return "可独立上下楼梯";
        } else if (walkStairsScore == 5) {
            return "需部分帮助";
        } else if (walkStairsScore == 0) {
            return "需极大帮助或完全依赖他人";
        }
        return null;
    }

    /**
     * 日常活动总分数
     */
    @Column
    private Integer totalScore;

    /**
     * 日常活动等级
     */
    @Column
    private Integer level;

    public String getLevelStr() {
        if (level == 0) {
            return "能力完好";
        } else if (level == 1) {
            return "轻度受损";
        } else if (level == 2) {
            return "中度受损";
        } else if (level == 3) {
            return "重度受损";
        }
        return null;
    }

    /**
     * 状态
     */
    @Column
    private Integer status;

    @TransientField
    private String elderName;

    public String getElderName() {
        return elderName;
    }

    public void setElderName(String elderName) {
        this.elderName = elderName;
    }

    public String getElderId() {
        return elderId;
    }

    public void setElderId(String elderId) {
        this.elderId = elderId;
    }

    public Integer getEatScore() {
        return eatScore;
    }

    public void setEatScore(Integer eatScore) {
        this.eatScore = eatScore;
    }

    public Integer getWashScore() {
        return washScore;
    }

    public void setWashScore(Integer washScore) {
        this.washScore = washScore;
    }

    public Integer getRetouchScore() {
        return retouchScore;
    }

    public void setRetouchScore(Integer retouchScore) {
        this.retouchScore = retouchScore;
    }

    public Integer getWareScore() {
        return wareScore;
    }

    public void setWareScore(Integer wareScore) {
        this.wareScore = wareScore;
    }

    public Integer getStoolControlScore() {
        return stoolControlScore;
    }

    public void setStoolControlScore(Integer stoolControlScore) {
        this.stoolControlScore = stoolControlScore;
    }

    public Integer getPeeControlScore() {
        return peeControlScore;
    }

    public void setPeeControlScore(Integer peeControlScore) {
        this.peeControlScore = peeControlScore;
    }

    public Integer getToiletScore() {
        return toiletScore;
    }

    public void setToiletScore(Integer toiletScore) {
        this.toiletScore = toiletScore;
    }

    public Integer getBedChairTransferScore() {
        return bedChairTransferScore;
    }

    public void setBedChairTransferScore(Integer bedChairTransferScore) {
        this.bedChairTransferScore = bedChairTransferScore;
    }

    public Integer getWalkGroundScore() {
        return walkGroundScore;
    }

    public void setWalkGroundScore(Integer walkGroundScore) {
        this.walkGroundScore = walkGroundScore;
    }

    public Integer getWalkStairsScore() {
        return walkStairsScore;
    }

    public void setWalkStairsScore(Integer walkStairsScore) {
        this.walkStairsScore = walkStairsScore;
    }

    public Integer getTotalScore() {
        return totalScore;
    }

    public void setTotalScore(Integer totalScore) {
        this.totalScore = totalScore;
    }

    public Integer getLevel() {
        return level;
    }

    public void setLevel(Integer level) {
        this.level = level;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }


}